//---------------------------------------------------------------------
//  This file is part of the Background Motion solution.
// 
//  Copyright (C) Mindscape (TM).  All rights reserved.
//  http://www.mindscape.co.nz
// 
//  THIS CODE AND INFORMATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY
//  KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
//  PARTICULAR PURPOSE.
//---------------------------------------------------------------------

using Mindscape.BackgroundMotion.Model;
using Mindscape.BackgroundMotion.Website.Infrastructure;
using Mindscape.BackgroundMotion.Website.Views;

namespace Mindscape.BackgroundMotion.Website.Presenters.Interfaces
{
  /// <summary>
  /// A view to show when we want to see the details for a specific member in the system
  /// </summary>
  public interface IMemberView : IView
  {
    /// <summary>
    /// The requested member instance
    /// </summary>
    Member Member { get; set; }

    /// <summary>
    /// A set of results which represent the contributions made by this member
    /// </summary>
    SearchResult MemberContributions { get; set; }

    /// <summary>
    /// Gets or sets a value indicating whether the member view has unmoderated contributions.
    /// </summary>
    bool HasUnapprovedContributions { get; set; }

    /// <summary>
    /// A set of results which represents the contributions of the member which aren't yet moderated
    /// </summary>
    SearchResult MemberUnapprovedContributions { get; set; }
  }
}
